@echo off
chcp 65001 > nul
title Cyan-Note Backend 环境检查工具
echo.
echo ====================================
echo   环境检查工具
echo ====================================
echo.

echo [检查1] Java环境
echo ----------------------------------------
if "%JAVA_HOME%"=="" (
    echo ❌ JAVA_HOME 未设置
    echo [建议] 请设置 JAVA_HOME 环境变量
    echo 示例: set JAVA_HOME=C:\Program Files\Java\jdk-17
) else (
    echo ✅ JAVA_HOME: %JAVA_HOME%
    if exist "%JAVA_HOME%\bin\java.exe" (
        echo ✅ Java可执行文件存在
        echo [版本信息]
        "%JAVA_HOME%\bin\java" -version 2>&1 | findstr "version"
    ) else (
        echo ❌ Java可执行文件不存在: %JAVA_HOME%\bin\java.exe
    )
)
echo.

echo [检查2] 系统Path中的Java
echo ----------------------------------------
where java > nul 2>&1
if %ERRORLEVEL% equ 0 (
    echo ✅ 系统Path中找到Java
    for /f "tokens=*" %%i in ('where java') do echo   路径: %%i
    java -version 2>&1 | findstr "version"
) else (
    echo ❌ 系统Path中未找到Java
)
echo.

echo [检查3] Maven环境  
echo ----------------------------------------
where mvn > nul 2>&1
if %ERRORLEVEL% equ 0 (
    echo ✅ 找到Maven
    for /f "tokens=*" %%i in ('where mvn') do echo   路径: %%i
    mvn -version | findstr "Apache Maven"
) else (
    echo ❌ 未找到Maven
    echo [建议] 请安装Apache Maven并添加到系统PATH
)
echo.

echo [检查4] 项目配置
echo ----------------------------------------
if exist "pom.xml" (
    echo ✅ 找到pom.xml文件
    findstr "<java.version>" pom.xml > nul
    if %ERRORLEVEL% equ 0 (
        for /f "tokens=2 delims=<>" %%i in ('findstr "<java.version>" pom.xml') do echo ✅ 项目Java版本: %%i
    )
) else (
    echo ❌ 未找到pom.xml文件
    echo [检查] 请确保在正确的项目目录下运行
)
echo.

echo [检查结果汇总]
echo ----------------------------------------
if "%JAVA_HOME%" neq "" if exist "%JAVA_HOME%\bin\java.exe" (
    echo ✅ Java环境配置正常
) else (
    echo ❌ Java环境需要配置
)

where mvn > nul 2>&1
if %ERRORLEVEL% equ 0 (
    echo ✅ Maven环境正常
) else (
    echo ❌ Maven环境需要安装
)

echo.
echo [建议操作]
echo 1. 确保安装JDK 17
echo 2. 设置JAVA_HOME环境变量
echo 3. 将Java bin目录添加到系统PATH
echo 4. 安装Apache Maven
echo 5. 将Maven bin目录添加到系统PATH
echo.
pause